<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.11"/>
<title>Cheetah Software: Simulation.h Source File</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../jquery.js"></script>
<script type="text/javascript" src="../../dynsections.js"></script>
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../resize.js"></script>
<script type="text/javascript" src="../../navtreedata.js"></script>
<script type="text/javascript" src="../../navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../search/searchdata.js"></script>
<script type="text/javascript" src="../../search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { init_search(); });
</script>
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Cheetah Software
   &#160;<span id="projectnumber">1.0</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.11 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="../../index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="../../namespaces.html"><span>Namespaces</span></a></li>
      <li><a href="../../annotated.html"><span>Classes</span></a></li>
      <li class="current"><a href="../../files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="../../search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="../../search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="../../files.html"><span>File&#160;List</span></a></li>
      <li><a href="../../globals.html"><span>File&#160;Members</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('d2/ded/_simulation_8h_source.html','../../');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="headertitle">
<div class="title">Simulation.h</div>  </div>
</div><!--header-->
<div class="contents">
<a href="../../d2/ded/_simulation_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div><div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#ifndef PROJECT_SIMULATION_H</span></div><div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#define PROJECT_SIMULATION_H</span></div><div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;</div><div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="../../d6/de9/_control_parameter_interface_8h.html">ControlParameters/ControlParameterInterface.h</a>&quot;</span></div><div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="../../d9/d53/_robot_parameters_8h.html">ControlParameters/RobotParameters.h</a>&quot;</span></div><div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="../../d2/dc1/_simulator_parameters_8h.html">ControlParameters/SimulatorParameters.h</a>&quot;</span></div><div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="../../d6/dce/_cheetah3_8h.html">Dynamics/Cheetah3.h</a>&quot;</span></div><div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="../../d8/db6/_mini_cheetah_8h.html">Dynamics/MiniCheetah.h</a>&quot;</span></div><div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="../../d3/dc7/_quadruped_8h.html">Dynamics/Quadruped.h</a>&quot;</span></div><div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="../../d2/de7/_graphics3_d_8h.html">Graphics3D.h</a>&quot;</span></div><div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="../../d2/da4/_imu_simulator_8h.html">SimUtilities/ImuSimulator.h</a>&quot;</span></div><div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="../../d1/db1/_simulator_message_8h.html">SimUtilities/SimulatorMessage.h</a>&quot;</span></div><div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="../../d0/d6a/_spine_board_8h.html">SimUtilities/SpineBoard.h</a>&quot;</span></div><div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="../../d9/d42/ti__boardcontrol_8h.html">SimUtilities/ti_boardcontrol.h</a>&quot;</span></div><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="../../d2/dac/_shared_memory_8h.html">Utilities/SharedMemory.h</a>&quot;</span></div><div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="../../d5/d29/_timer_8h.html">Utilities/Timer.h</a>&quot;</span></div><div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;</div><div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#include &lt;mutex&gt;</span></div><div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#include &lt;queue&gt;</span></div><div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#include &lt;utility&gt;</span></div><div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#include &lt;vector&gt;</span></div><div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;</div><div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="preprocessor">#include &lt;lcm/lcm-cpp.hpp&gt;</span></div><div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="preprocessor">#include &quot;simulator_lcmt.hpp&quot;</span></div><div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;</div><div class="line"><a name="l00031"></a><span class="lineno"><a class="line" href="../../d2/ded/_simulation_8h.html#a4dc49651cc087f6a9b07bf5f500da7bb">   31</a></span>&#160;<span class="preprocessor">#define SIM_LCM_NAME &quot;simulator_state&quot;</span></div><div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="../../dd/d14/class_simulation.html">   39</a></span>&#160;<span class="keyword">class </span><a class="code" href="../../dd/d14/class_simulation.html">Simulation</a> {</div><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;  EIGEN_MAKE_ALIGNED_OPERATOR_NEW</div><div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;  <span class="keyword">explicit</span> <a class="code" href="../../dd/d14/class_simulation.html#a6bf59d648bef2114a09ea3d81998ee3e">Simulation</a>(<a class="code" href="../../d9/d8e/cpp_types_8h.html#a78d284d08fd22d809fd436256f2cbc39">RobotType</a> robot, <a class="code" href="../../de/d6f/class_graphics3_d.html">Graphics3D</a>* window,</div><div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;                      <a class="code" href="../../da/dcf/class_simulator_control_parameters.html">SimulatorControlParameters</a>&amp; params, <a class="code" href="../../d8/d86/class_control_parameters.html">ControlParameters</a>&amp; userParams);</div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;</div><div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="../../dd/d14/class_simulation.html#a8a3a6fa9691b58d5dc614d98b8e4fefb">   48</a></span>&#160;  <span class="keywordtype">void</span> <a class="code" href="../../dd/d14/class_simulation.html#a8a3a6fa9691b58d5dc614d98b8e4fefb">setRobotState</a>(<a class="code" href="../../de/d75/struct_f_b_model_state.html">FBModelState&lt;double&gt;</a>&amp; state) {</div><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;    <a class="code" href="../../dd/d14/class_simulation.html#abeb2f6b890a6ecefabdba84c568899f4">_simulator</a>-&gt;<a class="code" href="../../d7/d9c/class_dynamics_simulator.html#a1b185d90d2b15840ca57f8e2adcf84fb">setState</a>(state);</div><div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;  }</div><div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;</div><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="../../dd/d14/class_simulation.html#a5474b99a1471e382b2e6a87adff814dc">step</a>(<span class="keywordtype">double</span> dt, <span class="keywordtype">double</span> dtLowLevelControl, <span class="keywordtype">double</span> dtHighLevelControl);</div><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;</div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="../../dd/d14/class_simulation.html#a20c4e8286bb7880f186e0aa3fe5f103e">addCollisionPlane</a>(<span class="keywordtype">double</span> mu, <span class="keywordtype">double</span> resti, <span class="keywordtype">double</span> height,</div><div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;                         <span class="keywordtype">double</span> sizeX = 20, <span class="keywordtype">double</span> sizeY = 20,</div><div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;                         <span class="keywordtype">double</span> checkerX = 40, <span class="keywordtype">double</span> checkerY = 40,</div><div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;                         <span class="keywordtype">bool</span> addToWindow = <span class="keyword">true</span>);</div><div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="../../dd/d14/class_simulation.html#a33e67c5154f5fdbab0d49f23777f4313">addCollisionBox</a>(<span class="keywordtype">double</span> mu, <span class="keywordtype">double</span> resti, <span class="keywordtype">double</span> depth, <span class="keywordtype">double</span> width,</div><div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;                       <span class="keywordtype">double</span> height, <span class="keyword">const</span> <a class="code" href="../../d9/d8e/cpp_types_8h.html#a6f07728c866b15ff0676a9b2ebfd2ba6">Vec3&lt;double&gt;</a>&amp; pos,</div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;                       <span class="keyword">const</span> <a class="code" href="../../d9/d8e/cpp_types_8h.html#aa8cb424e643d476ea485238dad7c3e18">Mat3&lt;double&gt;</a>&amp; <a class="code" href="../../da/d9b/namespaceori.html">ori</a>, <span class="keywordtype">bool</span> addToWindow = <span class="keyword">true</span>,</div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;                       <span class="keywordtype">bool</span> transparent = <span class="keyword">true</span>);</div><div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="../../dd/d14/class_simulation.html#afae53444e828ca1ce1a8b20d2f9fecc6">addCollisionMesh</a>(<span class="keywordtype">double</span> mu, <span class="keywordtype">double</span> resti, <span class="keywordtype">double</span> grid_size,</div><div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;                        <span class="keyword">const</span> <a class="code" href="../../d9/d8e/cpp_types_8h.html#a6f07728c866b15ff0676a9b2ebfd2ba6">Vec3&lt;double&gt;</a>&amp; left_corner_loc,</div><div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;                        <span class="keyword">const</span> <a class="code" href="../../d9/d8e/cpp_types_8h.html#a807200f3771dbd2cb2e4be52c5f2518c">DMat&lt;double&gt;</a>&amp; height_map, <span class="keywordtype">bool</span> addToWindow = <span class="keyword">true</span>,</div><div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;                        <span class="keywordtype">bool</span> transparent = <span class="keyword">true</span>);</div><div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;</div><div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="../../dd/d14/class_simulation.html#acfb66e9a45bf3c99747d271418f34bfe">lowLevelControl</a>();</div><div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="../../dd/d14/class_simulation.html#a04559087d745de92a850e2c490d4981d">highLevelControl</a>();</div><div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;</div><div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="../../dd/d14/class_simulation.html#a6186855f477a8b0add3cf41d5e5a6001">updateGraphics</a>();</div><div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;</div><div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="../../dd/d14/class_simulation.html#a34b590ee1fed73b2b6aaf3d2bcf3da0c">runAtSpeed</a>(<span class="keywordtype">bool</span> graphics = <span class="keyword">true</span>);</div><div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="../../dd/d14/class_simulation.html#a31364f2daa9daedef347aaff4001796c">sendControlParameter</a>(<span class="keyword">const</span> std::string&amp; name,</div><div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;                            <a class="code" href="../../df/df2/union_control_parameter_value.html">ControlParameterValue</a> value,</div><div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;                            <a class="code" href="../../d2/d01/_control_parameters_8h.html#a09b572cf97f12b378290dee549d8ecc3">ControlParameterValueKind</a> kind,</div><div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;                            <span class="keywordtype">bool</span> isUser);</div><div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;</div><div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="../../dd/d14/class_simulation.html#af5470397d0e1a3ee6f14aa981cf4e09b">   81</a></span>&#160;  <span class="keywordtype">void</span> <a class="code" href="../../dd/d14/class_simulation.html#af5470397d0e1a3ee6f14aa981cf4e09b">resetSimTime</a>() {</div><div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;    <a class="code" href="../../dd/d14/class_simulation.html#a44340d99dee87ef14aaf02faa94ea3d4">_currentSimTime</a> = 0.;</div><div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;    <a class="code" href="../../dd/d14/class_simulation.html#afef7938d79bfa913a86ff4b4448d9ae7">_timeOfNextLowLevelControl</a> = 0.;</div><div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;    <a class="code" href="../../dd/d14/class_simulation.html#adee3976d5353a82874f9e793269044b7">_timeOfNextHighLevelControl</a> = 0.;</div><div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;  }</div><div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;</div><div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="../../dd/d14/class_simulation.html#a80fad3f57dfaf195a36f7bc49bc88279">   87</a></span>&#160;  <a class="code" href="../../dd/d14/class_simulation.html#a80fad3f57dfaf195a36f7bc49bc88279">~Simulation</a>() {</div><div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;    <span class="keyword">delete</span> <a class="code" href="../../dd/d14/class_simulation.html#abeb2f6b890a6ecefabdba84c568899f4">_simulator</a>;</div><div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;    <span class="keyword">delete</span> <a class="code" href="../../dd/d14/class_simulation.html#ad4e6dbc1efd77aff3fb32bad28df358e">_robotDataSimulator</a>;</div><div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;    <span class="keyword">delete</span> <a class="code" href="../../dd/d14/class_simulation.html#a08195e8efa3d8d3c655bfb859b8bcdda">_imuSimulator</a>;</div><div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;    <span class="keyword">delete</span> <a class="code" href="../../dd/d14/class_simulation.html#a631f7ffcbbba9b636bf851093c825739">_lcm</a>;</div><div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;  }</div><div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;</div><div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="../../dd/d14/class_simulation.html#ac3fbb9bb368d8a3ed14ca6bf9a1c95d1">   94</a></span>&#160;  <span class="keyword">const</span> <a class="code" href="../../de/d75/struct_f_b_model_state.html">FBModelState&lt;double&gt;</a>&amp; <a class="code" href="../../dd/d14/class_simulation.html#ac3fbb9bb368d8a3ed14ca6bf9a1c95d1">getRobotState</a>() { <span class="keywordflow">return</span> <a class="code" href="../../dd/d14/class_simulation.html#abeb2f6b890a6ecefabdba84c568899f4">_simulator</a>-&gt;<a class="code" href="../../d7/d9c/class_dynamics_simulator.html#a72892f39ed60e2f50df53ea49ffb6433">getState</a>(); }</div><div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;</div><div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="../../dd/d14/class_simulation.html#af6d3f404c8c791cd05c6e5b6246dcbc2">   96</a></span>&#160;  <span class="keywordtype">void</span> <a class="code" href="../../dd/d14/class_simulation.html#af6d3f404c8c791cd05c6e5b6246dcbc2">stop</a>() {</div><div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;    <a class="code" href="../../dd/d14/class_simulation.html#aba2b5400e0985d7d0db4d47baeb14787">_running</a> = <span class="keyword">false</span>;  <span class="comment">// kill simulation loop</span></div><div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;    <a class="code" href="../../dd/d14/class_simulation.html#ae8523a0daf2a3f08822688ee40e63fa9">_wantStop</a> = <span class="keyword">true</span>;  <span class="comment">// if we&#39;re still trying to connect, this will kill us</span></div><div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;</div><div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;    <span class="keywordflow">if</span> (<a class="code" href="../../dd/d14/class_simulation.html#abb36e526299957c7f879d350e0a0c75a">_connected</a>) {</div><div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;      <a class="code" href="../../dd/d14/class_simulation.html#a3539cffbf755425b0c26edcb3cdb4200">_sharedMemory</a>().simToRobot.mode = <a class="code" href="../../d1/db1/_simulator_message_8h.html#a486e39cd4b287080b175f8736f67de4faa42b2fb0e720a080e79a92f4ca97d927">SimulatorMode::EXIT</a>;</div><div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;      <a class="code" href="../../dd/d14/class_simulation.html#a3539cffbf755425b0c26edcb3cdb4200">_sharedMemory</a>().simulatorIsDone();</div><div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;    }</div><div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;  }</div><div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;</div><div class="line"><a name="l00106"></a><span class="lineno"><a class="line" href="../../dd/d14/class_simulation.html#a343e571a3ad423fead44db01758fe54c">  106</a></span>&#160;  <a class="code" href="../../da/dcf/class_simulator_control_parameters.html">SimulatorControlParameters</a>&amp; <a class="code" href="../../dd/d14/class_simulation.html#a343e571a3ad423fead44db01758fe54c">getSimParams</a>() { <span class="keywordflow">return</span> <a class="code" href="../../dd/d14/class_simulation.html#a7057f1c2d1ad690fa55fcc66a5e69b7a">_simParams</a>; }</div><div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;</div><div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="../../dd/d14/class_simulation.html#a72521ff0a387ce6a53fec3bd9b209b5e">  108</a></span>&#160;  <a class="code" href="../../d0/d73/class_robot_control_parameters.html">RobotControlParameters</a>&amp; <a class="code" href="../../dd/d14/class_simulation.html#a72521ff0a387ce6a53fec3bd9b209b5e">getRobotParams</a>() { <span class="keywordflow">return</span> <a class="code" href="../../dd/d14/class_simulation.html#abb7498934699436a95c29b400df699e9">_robotParams</a>; }</div><div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="../../dd/d14/class_simulation.html#a0ba0666f985d58cc1b6c8d6bac75d8c7">  109</a></span>&#160;  <a class="code" href="../../d8/d86/class_control_parameters.html">ControlParameters</a>&amp; <a class="code" href="../../dd/d14/class_simulation.html#a0ba0666f985d58cc1b6c8d6bac75d8c7">getUserParams</a>() { <span class="keywordflow">return</span> <a class="code" href="../../dd/d14/class_simulation.html#af97dee243877316b7e78ba6d56a3cd2f">_userParams</a>; }</div><div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;</div><div class="line"><a name="l00111"></a><span class="lineno"><a class="line" href="../../dd/d14/class_simulation.html#a84d72d5cddf1b6b5dbbe94f83a448958">  111</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="../../dd/d14/class_simulation.html#a84d72d5cddf1b6b5dbbe94f83a448958">isRobotConnected</a>() { <span class="keywordflow">return</span> <a class="code" href="../../dd/d14/class_simulation.html#abb36e526299957c7f879d350e0a0c75a">_connected</a>; }</div><div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;</div><div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="../../dd/d14/class_simulation.html#ab264f11e0f5fc0e601644f1c9e8ced64">firstRun</a>();</div><div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="../../dd/d14/class_simulation.html#ad20996d43bb2265500b4edb5fcb00dc6">buildLcmMessage</a>();</div><div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="../../dd/d14/class_simulation.html#ad3b3a11e3a8d6e2119dbcf538802d5cf">loadTerrainFile</a>(<span class="keyword">const</span> std::string&amp; terrainFileName,</div><div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;                       <span class="keywordtype">bool</span> addGraphics = <span class="keyword">true</span>);</div><div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;</div><div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00119"></a><span class="lineno"><a class="line" href="../../dd/d14/class_simulation.html#a1a4397660fa821c19c2bcc75662106ae">  119</a></span>&#160;  std::mutex <a class="code" href="../../dd/d14/class_simulation.html#a1a4397660fa821c19c2bcc75662106ae">_robotMutex</a>;</div><div class="line"><a name="l00120"></a><span class="lineno"><a class="line" href="../../dd/d14/class_simulation.html#a3539cffbf755425b0c26edcb3cdb4200">  120</a></span>&#160;  <a class="code" href="../../d1/d8d/class_shared_memory_object.html">SharedMemoryObject&lt;SimulatorSyncronizedMessage&gt;</a> <a class="code" href="../../dd/d14/class_simulation.html#a3539cffbf755425b0c26edcb3cdb4200">_sharedMemory</a>;</div><div class="line"><a name="l00121"></a><span class="lineno"><a class="line" href="../../dd/d14/class_simulation.html#a08195e8efa3d8d3c655bfb859b8bcdda">  121</a></span>&#160;  <a class="code" href="../../d8/da4/class_imu_simulator.html">ImuSimulator&lt;double&gt;</a>* <a class="code" href="../../dd/d14/class_simulation.html#a08195e8efa3d8d3c655bfb859b8bcdda">_imuSimulator</a> = <span class="keyword">nullptr</span>;</div><div class="line"><a name="l00122"></a><span class="lineno"><a class="line" href="../../dd/d14/class_simulation.html#a7057f1c2d1ad690fa55fcc66a5e69b7a">  122</a></span>&#160;  <a class="code" href="../../da/dcf/class_simulator_control_parameters.html">SimulatorControlParameters</a>&amp; <a class="code" href="../../dd/d14/class_simulation.html#a7057f1c2d1ad690fa55fcc66a5e69b7a">_simParams</a>;</div><div class="line"><a name="l00123"></a><span class="lineno"><a class="line" href="../../dd/d14/class_simulation.html#af97dee243877316b7e78ba6d56a3cd2f">  123</a></span>&#160;  <a class="code" href="../../d8/d86/class_control_parameters.html">ControlParameters</a>&amp; <a class="code" href="../../dd/d14/class_simulation.html#af97dee243877316b7e78ba6d56a3cd2f">_userParams</a>;</div><div class="line"><a name="l00124"></a><span class="lineno"><a class="line" href="../../dd/d14/class_simulation.html#abb7498934699436a95c29b400df699e9">  124</a></span>&#160;  <a class="code" href="../../d0/d73/class_robot_control_parameters.html">RobotControlParameters</a> <a class="code" href="../../dd/d14/class_simulation.html#abb7498934699436a95c29b400df699e9">_robotParams</a>;</div><div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;</div><div class="line"><a name="l00126"></a><span class="lineno"><a class="line" href="../../dd/d14/class_simulation.html#a4cfbfd15921d8e09ab67d6149425061b">  126</a></span>&#160;  <span class="keywordtype">size_t</span> <a class="code" href="../../dd/d14/class_simulation.html#a4cfbfd15921d8e09ab67d6149425061b">_simRobotID</a>, <a class="code" href="../../dd/d14/class_simulation.html#acd45041ed9262293f92d7928342ca4da">_controllerRobotID</a>;</div><div class="line"><a name="l00127"></a><span class="lineno"><a class="line" href="../../dd/d14/class_simulation.html#aacbbe2c5f5d30f4029427156a8aec07f">  127</a></span>&#160;  <a class="code" href="../../de/d6f/class_graphics3_d.html">Graphics3D</a>* <a class="code" href="../../dd/d14/class_simulation.html#aacbbe2c5f5d30f4029427156a8aec07f">_window</a> = <span class="keyword">nullptr</span>;</div><div class="line"><a name="l00128"></a><span class="lineno"><a class="line" href="../../dd/d14/class_simulation.html#af713a3529e71a04c0b832dd2e10591fb">  128</a></span>&#160;  <a class="code" href="../../dc/d66/class_quadruped.html">Quadruped&lt;double&gt;</a> <a class="code" href="../../dd/d14/class_simulation.html#af713a3529e71a04c0b832dd2e10591fb">_quadruped</a>;</div><div class="line"><a name="l00129"></a><span class="lineno"><a class="line" href="../../dd/d14/class_simulation.html#adf2d9c22a32a995bf2a8505947ca6871">  129</a></span>&#160;  <a class="code" href="../../de/d75/struct_f_b_model_state.html">FBModelState&lt;double&gt;</a> <a class="code" href="../../dd/d14/class_simulation.html#adf2d9c22a32a995bf2a8505947ca6871">_robotControllerState</a>;</div><div class="line"><a name="l00130"></a><span class="lineno"><a class="line" href="../../dd/d14/class_simulation.html#a0965cd3e2bce1b7ee1ce3f7f6d752444">  130</a></span>&#160;  <a class="code" href="../../d6/db1/class_floating_base_model.html">FloatingBaseModel&lt;double&gt;</a> <a class="code" href="../../dd/d14/class_simulation.html#a0965cd3e2bce1b7ee1ce3f7f6d752444">_model</a>;</div><div class="line"><a name="l00131"></a><span class="lineno"><a class="line" href="../../dd/d14/class_simulation.html#a33a669431e116d1e6c59af5a4a4ad9bf">  131</a></span>&#160;  <a class="code" href="../../d6/db1/class_floating_base_model.html">FloatingBaseModel&lt;double&gt;</a> <a class="code" href="../../dd/d14/class_simulation.html#a33a669431e116d1e6c59af5a4a4ad9bf">_robotDataModel</a>;</div><div class="line"><a name="l00132"></a><span class="lineno"><a class="line" href="../../dd/d14/class_simulation.html#a4ca599c328bca7c738355b97ebf76337">  132</a></span>&#160;  <a class="code" href="../../d9/d8e/cpp_types_8h.html#ae2e5a0a178a2c528d8aa939f85db7a3e">DVec&lt;double&gt;</a> <a class="code" href="../../dd/d14/class_simulation.html#a4ca599c328bca7c738355b97ebf76337">_tau</a>;</div><div class="line"><a name="l00133"></a><span class="lineno"><a class="line" href="../../dd/d14/class_simulation.html#abeb2f6b890a6ecefabdba84c568899f4">  133</a></span>&#160;  <a class="code" href="../../d7/d9c/class_dynamics_simulator.html">DynamicsSimulator&lt;double&gt;</a>* <a class="code" href="../../dd/d14/class_simulation.html#abeb2f6b890a6ecefabdba84c568899f4">_simulator</a> = <span class="keyword">nullptr</span>;</div><div class="line"><a name="l00134"></a><span class="lineno"><a class="line" href="../../dd/d14/class_simulation.html#ad4e6dbc1efd77aff3fb32bad28df358e">  134</a></span>&#160;  <a class="code" href="../../d7/d9c/class_dynamics_simulator.html">DynamicsSimulator&lt;double&gt;</a>* <a class="code" href="../../dd/d14/class_simulation.html#ad4e6dbc1efd77aff3fb32bad28df358e">_robotDataSimulator</a> = <span class="keyword">nullptr</span>;</div><div class="line"><a name="l00135"></a><span class="lineno"><a class="line" href="../../dd/d14/class_simulation.html#af1e50315d809d3306564abf7225f6864">  135</a></span>&#160;  std::vector&lt;ActuatorModel&lt;double&gt;&gt; <a class="code" href="../../dd/d14/class_simulation.html#af1e50315d809d3306564abf7225f6864">_actuatorModels</a>;</div><div class="line"><a name="l00136"></a><span class="lineno"><a class="line" href="../../dd/d14/class_simulation.html#a846c1153eb5f89deea68886b1faea5b9">  136</a></span>&#160;  <a class="code" href="../../d0/ddd/struct_spi_command.html">SpiCommand</a> <a class="code" href="../../dd/d14/class_simulation.html#a846c1153eb5f89deea68886b1faea5b9">_spiCommand</a>;</div><div class="line"><a name="l00137"></a><span class="lineno"><a class="line" href="../../dd/d14/class_simulation.html#ad1fa8b0ac8786fd394a822547c507d48">  137</a></span>&#160;  <a class="code" href="../../d5/d09/struct_spi_data.html">SpiData</a> <a class="code" href="../../dd/d14/class_simulation.html#ad1fa8b0ac8786fd394a822547c507d48">_spiData</a>;</div><div class="line"><a name="l00138"></a><span class="lineno"><a class="line" href="../../dd/d14/class_simulation.html#abfe1f6283d725c294a80ec8cebaa854f">  138</a></span>&#160;  <a class="code" href="../../d1/da3/class_spine_board.html">SpineBoard</a> <a class="code" href="../../dd/d14/class_simulation.html#abfe1f6283d725c294a80ec8cebaa854f">_spineBoards</a>[4];</div><div class="line"><a name="l00139"></a><span class="lineno"><a class="line" href="../../dd/d14/class_simulation.html#af206908794036d14ba5c4c1d19779588">  139</a></span>&#160;  <a class="code" href="../../d4/d1a/class_t_i___board_control.html">TI_BoardControl</a> <a class="code" href="../../dd/d14/class_simulation.html#af206908794036d14ba5c4c1d19779588">_tiBoards</a>[4];</div><div class="line"><a name="l00140"></a><span class="lineno"><a class="line" href="../../dd/d14/class_simulation.html#a4053d346b6dd8e1b49e26625aa782eb3">  140</a></span>&#160;  <a class="code" href="../../d9/d8e/cpp_types_8h.html#a78d284d08fd22d809fd436256f2cbc39">RobotType</a> <a class="code" href="../../dd/d14/class_simulation.html#a4053d346b6dd8e1b49e26625aa782eb3">_robot</a>;</div><div class="line"><a name="l00141"></a><span class="lineno"><a class="line" href="../../dd/d14/class_simulation.html#a631f7ffcbbba9b636bf851093c825739">  141</a></span>&#160;  lcm::LCM* <a class="code" href="../../dd/d14/class_simulation.html#a631f7ffcbbba9b636bf851093c825739">_lcm</a> = <span class="keyword">nullptr</span>;</div><div class="line"><a name="l00142"></a><span class="lineno"><a class="line" href="../../dd/d14/class_simulation.html#aba2b5400e0985d7d0db4d47baeb14787">  142</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="../../dd/d14/class_simulation.html#aba2b5400e0985d7d0db4d47baeb14787">_running</a> = <span class="keyword">false</span>;</div><div class="line"><a name="l00143"></a><span class="lineno"><a class="line" href="../../dd/d14/class_simulation.html#abb36e526299957c7f879d350e0a0c75a">  143</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="../../dd/d14/class_simulation.html#abb36e526299957c7f879d350e0a0c75a">_connected</a> = <span class="keyword">false</span>;</div><div class="line"><a name="l00144"></a><span class="lineno"><a class="line" href="../../dd/d14/class_simulation.html#ae8523a0daf2a3f08822688ee40e63fa9">  144</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="../../dd/d14/class_simulation.html#ae8523a0daf2a3f08822688ee40e63fa9">_wantStop</a> = <span class="keyword">false</span>;</div><div class="line"><a name="l00145"></a><span class="lineno"><a class="line" href="../../dd/d14/class_simulation.html#a496554e586e095dc468d56b61c5c6e16">  145</a></span>&#160;  <span class="keywordtype">double</span> <a class="code" href="../../dd/d14/class_simulation.html#a496554e586e095dc468d56b61c5c6e16">_desiredSimSpeed</a> = 1.;</div><div class="line"><a name="l00146"></a><span class="lineno"><a class="line" href="../../dd/d14/class_simulation.html#a44340d99dee87ef14aaf02faa94ea3d4">  146</a></span>&#160;  <span class="keywordtype">double</span> <a class="code" href="../../dd/d14/class_simulation.html#a44340d99dee87ef14aaf02faa94ea3d4">_currentSimTime</a> = 0.;</div><div class="line"><a name="l00147"></a><span class="lineno"><a class="line" href="../../dd/d14/class_simulation.html#afef7938d79bfa913a86ff4b4448d9ae7">  147</a></span>&#160;  <span class="keywordtype">double</span> <a class="code" href="../../dd/d14/class_simulation.html#afef7938d79bfa913a86ff4b4448d9ae7">_timeOfNextLowLevelControl</a> = 0.;</div><div class="line"><a name="l00148"></a><span class="lineno"><a class="line" href="../../dd/d14/class_simulation.html#adee3976d5353a82874f9e793269044b7">  148</a></span>&#160;  <span class="keywordtype">double</span> <a class="code" href="../../dd/d14/class_simulation.html#adee3976d5353a82874f9e793269044b7">_timeOfNextHighLevelControl</a> = 0.;</div><div class="line"><a name="l00149"></a><span class="lineno"><a class="line" href="../../dd/d14/class_simulation.html#ae1f3a65499126d5d527500dd221300a4">  149</a></span>&#160;  <a class="code" href="../../d0/d99/c_types_8h.html#a350c6fc928e3bdc6c6486268ac8fb269">s64</a> <a class="code" href="../../dd/d14/class_simulation.html#ae1f3a65499126d5d527500dd221300a4">_highLevelIterations</a> = 0;</div><div class="line"><a name="l00150"></a><span class="lineno"><a class="line" href="../../dd/d14/class_simulation.html#a42bbc154348f2b47e6071dd346678159">  150</a></span>&#160;  simulator_lcmt <a class="code" href="../../dd/d14/class_simulation.html#a42bbc154348f2b47e6071dd346678159">_simLCM</a>;</div><div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;};</div><div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;</div><div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;<span class="preprocessor">#endif  // PROJECT_SIMULATION_H</span></div><div class="ttc" id="class_simulation_html_af6d3f404c8c791cd05c6e5b6246dcbc2"><div class="ttname"><a href="../../dd/d14/class_simulation.html#af6d3f404c8c791cd05c6e5b6246dcbc2">Simulation::stop</a></div><div class="ttdeci">void stop()</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/ded/_simulation_8h_source.html#l00096">Simulation.h:96</a></div></div>
<div class="ttc" id="class_simulation_html_a33e67c5154f5fdbab0d49f23777f4313"><div class="ttname"><a href="../../dd/d14/class_simulation.html#a33e67c5154f5fdbab0d49f23777f4313">Simulation::addCollisionBox</a></div><div class="ttdeci">void addCollisionBox(double mu, double resti, double depth, double width, double height, const Vec3&lt; double &gt; &amp;pos, const Mat3&lt; double &gt; &amp;ori, bool addToWindow=true, bool transparent=true)</div><div class="ttdef"><b>Definition:</b> <a href="../../db/d98/_simulation_8cpp_source.html#l00546">Simulation.cpp:546</a></div></div>
<div class="ttc" id="class_simulation_html_ac3fbb9bb368d8a3ed14ca6bf9a1c95d1"><div class="ttname"><a href="../../dd/d14/class_simulation.html#ac3fbb9bb368d8a3ed14ca6bf9a1c95d1">Simulation::getRobotState</a></div><div class="ttdeci">const FBModelState&lt; double &gt; &amp; getRobotState()</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/ded/_simulation_8h_source.html#l00094">Simulation.h:94</a></div></div>
<div class="ttc" id="class_spine_board_html"><div class="ttname"><a href="../../d1/da3/class_spine_board.html">SpineBoard</a></div><div class="ttdef"><b>Definition:</b> <a href="../../d0/d6a/_spine_board_8h_source.html#l00045">SpineBoard.h:45</a></div></div>
<div class="ttc" id="class_simulation_html_a34b590ee1fed73b2b6aaf3d2bcf3da0c"><div class="ttname"><a href="../../dd/d14/class_simulation.html#a34b590ee1fed73b2b6aaf3d2bcf3da0c">Simulation::runAtSpeed</a></div><div class="ttdeci">void runAtSpeed(bool graphics=true)</div><div class="ttdef"><b>Definition:</b> <a href="../../db/d98/_simulation_8cpp_source.html#l00579">Simulation.cpp:579</a></div></div>
<div class="ttc" id="_shared_memory_8h_html"><div class="ttname"><a href="../../d2/dac/_shared_memory_8h.html">SharedMemory.h</a></div><div class="ttdoc">Shared memory utilities for connecting the simulator program to the robot program. </div></div>
<div class="ttc" id="class_simulation_html_a5474b99a1471e382b2e6a87adff814dc"><div class="ttname"><a href="../../dd/d14/class_simulation.html#a5474b99a1471e382b2e6a87adff814dc">Simulation::step</a></div><div class="ttdeci">void step(double dt, double dtLowLevelControl, double dtHighLevelControl)</div><div class="ttdef"><b>Definition:</b> <a href="../../db/d98/_simulation_8cpp_source.html#l00305">Simulation.cpp:305</a></div></div>
<div class="ttc" id="class_simulation_html_a0ba0666f985d58cc1b6c8d6bac75d8c7"><div class="ttname"><a href="../../dd/d14/class_simulation.html#a0ba0666f985d58cc1b6c8d6bac75d8c7">Simulation::getUserParams</a></div><div class="ttdeci">ControlParameters &amp; getUserParams()</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/ded/_simulation_8h_source.html#l00109">Simulation.h:109</a></div></div>
<div class="ttc" id="class_dynamics_simulator_html"><div class="ttname"><a href="../../d7/d9c/class_dynamics_simulator.html">DynamicsSimulator&lt; double &gt;</a></div></div>
<div class="ttc" id="_imu_simulator_8h_html"><div class="ttname"><a href="../../d2/da4/_imu_simulator_8h.html">ImuSimulator.h</a></div><div class="ttdoc">Simulated IMU. </div></div>
<div class="ttc" id="_control_parameters_8h_html_a09b572cf97f12b378290dee549d8ecc3"><div class="ttname"><a href="../../d2/d01/_control_parameters_8h.html#a09b572cf97f12b378290dee549d8ecc3">ControlParameterValueKind</a></div><div class="ttdeci">ControlParameterValueKind</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/d01/_control_parameters_8h_source.html#l00034">ControlParameters.h:34</a></div></div>
<div class="ttc" id="class_quadruped_html"><div class="ttname"><a href="../../dc/d66/class_quadruped.html">Quadruped&lt; double &gt;</a></div></div>
<div class="ttc" id="struct_spi_command_html"><div class="ttname"><a href="../../d0/ddd/struct_spi_command.html">SpiCommand</a></div><div class="ttdef"><b>Definition:</b> <a href="../../d0/d6a/_spine_board_8h_source.html#l00010">SpineBoard.h:10</a></div></div>
<div class="ttc" id="class_control_parameters_html"><div class="ttname"><a href="../../d8/d86/class_control_parameters.html">ControlParameters</a></div><div class="ttdef"><b>Definition:</b> <a href="../../d2/d01/_control_parameters_8h_source.html#l00391">ControlParameters.h:391</a></div></div>
<div class="ttc" id="class_simulation_html_afae53444e828ca1ce1a8b20d2f9fecc6"><div class="ttname"><a href="../../dd/d14/class_simulation.html#afae53444e828ca1ce1a8b20d2f9fecc6">Simulation::addCollisionMesh</a></div><div class="ttdeci">void addCollisionMesh(double mu, double resti, double grid_size, const Vec3&lt; double &gt; &amp;left_corner_loc, const DMat&lt; double &gt; &amp;height_map, bool addToWindow=true, bool transparent=true)</div><div class="ttdef"><b>Definition:</b> <a href="../../db/d98/_simulation_8cpp_source.html#l00559">Simulation.cpp:559</a></div></div>
<div class="ttc" id="class_simulation_html_af1e50315d809d3306564abf7225f6864"><div class="ttname"><a href="../../dd/d14/class_simulation.html#af1e50315d809d3306564abf7225f6864">Simulation::_actuatorModels</a></div><div class="ttdeci">std::vector&lt; ActuatorModel&lt; double &gt; &gt; _actuatorModels</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/ded/_simulation_8h_source.html#l00135">Simulation.h:135</a></div></div>
<div class="ttc" id="cpp_types_8h_html_aa8cb424e643d476ea485238dad7c3e18"><div class="ttname"><a href="../../d9/d8e/cpp_types_8h.html#aa8cb424e643d476ea485238dad7c3e18">Mat3</a></div><div class="ttdeci">typename Eigen::Matrix&lt; T, 3, 3 &gt; Mat3</div><div class="ttdef"><b>Definition:</b> <a href="../../d9/d8e/cpp_types_8h_source.html#l00054">cppTypes.h:54</a></div></div>
<div class="ttc" id="class_simulation_html_a04559087d745de92a850e2c490d4981d"><div class="ttname"><a href="../../dd/d14/class_simulation.html#a04559087d745de92a850e2c490d4981d">Simulation::highLevelControl</a></div><div class="ttdeci">void highLevelControl()</div><div class="ttdef"><b>Definition:</b> <a href="../../db/d98/_simulation_8cpp_source.html#l00398">Simulation.cpp:398</a></div></div>
<div class="ttc" id="_quadruped_8h_html"><div class="ttname"><a href="../../d3/dc7/_quadruped_8h.html">Quadruped.h</a></div><div class="ttdoc">Data structure containing parameters for quadruped robot. </div></div>
<div class="ttc" id="class_simulation_html_abb36e526299957c7f879d350e0a0c75a"><div class="ttname"><a href="../../dd/d14/class_simulation.html#abb36e526299957c7f879d350e0a0c75a">Simulation::_connected</a></div><div class="ttdeci">bool _connected</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/ded/_simulation_8h_source.html#l00143">Simulation.h:143</a></div></div>
<div class="ttc" id="cpp_types_8h_html_a807200f3771dbd2cb2e4be52c5f2518c"><div class="ttname"><a href="../../d9/d8e/cpp_types_8h.html#a807200f3771dbd2cb2e4be52c5f2518c">DMat</a></div><div class="ttdeci">typename Eigen::Matrix&lt; T, Eigen::Dynamic, Eigen::Dynamic &gt; DMat</div><div class="ttdef"><b>Definition:</b> <a href="../../d9/d8e/cpp_types_8h_source.html#l00106">cppTypes.h:106</a></div></div>
<div class="ttc" id="class_simulation_html_a6186855f477a8b0add3cf41d5e5a6001"><div class="ttname"><a href="../../dd/d14/class_simulation.html#a6186855f477a8b0add3cf41d5e5a6001">Simulation::updateGraphics</a></div><div class="ttdeci">void updateGraphics()</div><div class="ttdef"><b>Definition:</b> <a href="../../db/d98/_simulation_8cpp_source.html#l00805">Simulation.cpp:805</a></div></div>
<div class="ttc" id="_cheetah3_8h_html"><div class="ttname"><a href="../../d6/dce/_cheetah3_8h.html">Cheetah3.h</a></div><div class="ttdoc">Utility function to build a Cheetah 3 Quadruped object. </div></div>
<div class="ttc" id="class_simulation_html_a1a4397660fa821c19c2bcc75662106ae"><div class="ttname"><a href="../../dd/d14/class_simulation.html#a1a4397660fa821c19c2bcc75662106ae">Simulation::_robotMutex</a></div><div class="ttdeci">std::mutex _robotMutex</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/ded/_simulation_8h_source.html#l00119">Simulation.h:119</a></div></div>
<div class="ttc" id="class_simulation_html_acfb66e9a45bf3c99747d271418f34bfe"><div class="ttname"><a href="../../dd/d14/class_simulation.html#acfb66e9a45bf3c99747d271418f34bfe">Simulation::lowLevelControl</a></div><div class="ttdeci">void lowLevelControl()</div><div class="ttdef"><b>Definition:</b> <a href="../../db/d98/_simulation_8cpp_source.html#l00360">Simulation.cpp:360</a></div></div>
<div class="ttc" id="_mini_cheetah_8h_html"><div class="ttname"><a href="../../d8/db6/_mini_cheetah_8h.html">MiniCheetah.h</a></div><div class="ttdoc">Utility function to build a Mini Cheetah Quadruped object. </div></div>
<div class="ttc" id="cpp_types_8h_html_a6f07728c866b15ff0676a9b2ebfd2ba6"><div class="ttname"><a href="../../d9/d8e/cpp_types_8h.html#a6f07728c866b15ff0676a9b2ebfd2ba6">Vec3</a></div><div class="ttdeci">typename Eigen::Matrix&lt; T, 3, 1 &gt; Vec3</div><div class="ttdef"><b>Definition:</b> <a href="../../d9/d8e/cpp_types_8h_source.html#l00026">cppTypes.h:26</a></div></div>
<div class="ttc" id="class_graphics3_d_html"><div class="ttname"><a href="../../de/d6f/class_graphics3_d.html">Graphics3D</a></div><div class="ttdef"><b>Definition:</b> <a href="../../d2/de7/_graphics3_d_8h_source.html#l00033">Graphics3D.h:33</a></div></div>
<div class="ttc" id="class_simulation_html_af206908794036d14ba5c4c1d19779588"><div class="ttname"><a href="../../dd/d14/class_simulation.html#af206908794036d14ba5c4c1d19779588">Simulation::_tiBoards</a></div><div class="ttdeci">TI_BoardControl _tiBoards[4]</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/ded/_simulation_8h_source.html#l00139">Simulation.h:139</a></div></div>
<div class="ttc" id="_robot_parameters_8h_html"><div class="ttname"><a href="../../d9/d53/_robot_parameters_8h.html">RobotParameters.h</a></div></div>
<div class="ttc" id="class_robot_control_parameters_html"><div class="ttname"><a href="../../d0/d73/class_robot_control_parameters.html">RobotControlParameters</a></div><div class="ttdef"><b>Definition:</b> <a href="../../d9/d53/_robot_parameters_8h_source.html#l00012">RobotParameters.h:12</a></div></div>
<div class="ttc" id="class_simulation_html_aacbbe2c5f5d30f4029427156a8aec07f"><div class="ttname"><a href="../../dd/d14/class_simulation.html#aacbbe2c5f5d30f4029427156a8aec07f">Simulation::_window</a></div><div class="ttdeci">Graphics3D * _window</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/ded/_simulation_8h_source.html#l00127">Simulation.h:127</a></div></div>
<div class="ttc" id="class_simulation_html_a3539cffbf755425b0c26edcb3cdb4200"><div class="ttname"><a href="../../dd/d14/class_simulation.html#a3539cffbf755425b0c26edcb3cdb4200">Simulation::_sharedMemory</a></div><div class="ttdeci">SharedMemoryObject&lt; SimulatorSyncronizedMessage &gt; _sharedMemory</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/ded/_simulation_8h_source.html#l00120">Simulation.h:120</a></div></div>
<div class="ttc" id="class_simulation_html_ad4e6dbc1efd77aff3fb32bad28df358e"><div class="ttname"><a href="../../dd/d14/class_simulation.html#ad4e6dbc1efd77aff3fb32bad28df358e">Simulation::_robotDataSimulator</a></div><div class="ttdeci">DynamicsSimulator&lt; double &gt; * _robotDataSimulator</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/ded/_simulation_8h_source.html#l00134">Simulation.h:134</a></div></div>
<div class="ttc" id="class_simulation_html_ab264f11e0f5fc0e601644f1c9e8ced64"><div class="ttname"><a href="../../dd/d14/class_simulation.html#ab264f11e0f5fc0e601644f1c9e8ced64">Simulation::firstRun</a></div><div class="ttdeci">void firstRun()</div><div class="ttdef"><b>Definition:</b> <a href="../../db/d98/_simulation_8cpp_source.html#l00268">Simulation.cpp:268</a></div></div>
<div class="ttc" id="union_control_parameter_value_html"><div class="ttname"><a href="../../df/df2/union_control_parameter_value.html">ControlParameterValue</a></div><div class="ttdef"><b>Definition:</b> <a href="../../d2/d01/_control_parameters_8h_source.html#l00055">ControlParameters.h:55</a></div></div>
<div class="ttc" id="c_types_8h_html_a350c6fc928e3bdc6c6486268ac8fb269"><div class="ttname"><a href="../../d0/d99/c_types_8h.html#a350c6fc928e3bdc6c6486268ac8fb269">s64</a></div><div class="ttdeci">int64_t s64</div><div class="ttdef"><b>Definition:</b> <a href="../../d0/d99/c_types_8h_source.html#l00024">cTypes.h:24</a></div></div>
<div class="ttc" id="class_simulation_html_ad3b3a11e3a8d6e2119dbcf538802d5cf"><div class="ttname"><a href="../../dd/d14/class_simulation.html#ad3b3a11e3a8d6e2119dbcf538802d5cf">Simulation::loadTerrainFile</a></div><div class="ttdeci">void loadTerrainFile(const std::string &amp;terrainFileName, bool addGraphics=true)</div><div class="ttdef"><b>Definition:</b> <a href="../../db/d98/_simulation_8cpp_source.html#l00638">Simulation.cpp:638</a></div></div>
<div class="ttc" id="class_simulation_html_a4ca599c328bca7c738355b97ebf76337"><div class="ttname"><a href="../../dd/d14/class_simulation.html#a4ca599c328bca7c738355b97ebf76337">Simulation::_tau</a></div><div class="ttdeci">DVec&lt; double &gt; _tau</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/ded/_simulation_8h_source.html#l00132">Simulation.h:132</a></div></div>
<div class="ttc" id="class_dynamics_simulator_html_a1b185d90d2b15840ca57f8e2adcf84fb"><div class="ttname"><a href="../../d7/d9c/class_dynamics_simulator.html#a1b185d90d2b15840ca57f8e2adcf84fb">DynamicsSimulator::setState</a></div><div class="ttdeci">void setState(const FBModelState&lt; T &gt; &amp;state)</div><div class="ttdef"><b>Definition:</b> <a href="../../d0/d52/_dynamics_simulator_8h_source.html#l00061">DynamicsSimulator.h:61</a></div></div>
<div class="ttc" id="class_simulation_html_abb7498934699436a95c29b400df699e9"><div class="ttname"><a href="../../dd/d14/class_simulation.html#abb7498934699436a95c29b400df699e9">Simulation::_robotParams</a></div><div class="ttdeci">RobotControlParameters _robotParams</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/ded/_simulation_8h_source.html#l00124">Simulation.h:124</a></div></div>
<div class="ttc" id="class_simulation_html_a80fad3f57dfaf195a36f7bc49bc88279"><div class="ttname"><a href="../../dd/d14/class_simulation.html#a80fad3f57dfaf195a36f7bc49bc88279">Simulation::~Simulation</a></div><div class="ttdeci">~Simulation()</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/ded/_simulation_8h_source.html#l00087">Simulation.h:87</a></div></div>
<div class="ttc" id="class_simulation_html_a4cfbfd15921d8e09ab67d6149425061b"><div class="ttname"><a href="../../dd/d14/class_simulation.html#a4cfbfd15921d8e09ab67d6149425061b">Simulation::_simRobotID</a></div><div class="ttdeci">size_t _simRobotID</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/ded/_simulation_8h_source.html#l00126">Simulation.h:126</a></div></div>
<div class="ttc" id="class_simulation_html_aba2b5400e0985d7d0db4d47baeb14787"><div class="ttname"><a href="../../dd/d14/class_simulation.html#aba2b5400e0985d7d0db4d47baeb14787">Simulation::_running</a></div><div class="ttdeci">bool _running</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/ded/_simulation_8h_source.html#l00142">Simulation.h:142</a></div></div>
<div class="ttc" id="class_simulation_html_a20c4e8286bb7880f186e0aa3fe5f103e"><div class="ttname"><a href="../../dd/d14/class_simulation.html#a20c4e8286bb7880f186e0aa3fe5f103e">Simulation::addCollisionPlane</a></div><div class="ttdeci">void addCollisionPlane(double mu, double resti, double height, double sizeX=20, double sizeY=20, double checkerX=40, double checkerY=40, bool addToWindow=true)</div><div class="ttdef"><b>Definition:</b> <a href="../../db/d98/_simulation_8cpp_source.html#l00520">Simulation.cpp:520</a></div></div>
<div class="ttc" id="class_simulation_html_ad1fa8b0ac8786fd394a822547c507d48"><div class="ttname"><a href="../../dd/d14/class_simulation.html#ad1fa8b0ac8786fd394a822547c507d48">Simulation::_spiData</a></div><div class="ttdeci">SpiData _spiData</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/ded/_simulation_8h_source.html#l00137">Simulation.h:137</a></div></div>
<div class="ttc" id="class_simulation_html_af713a3529e71a04c0b832dd2e10591fb"><div class="ttname"><a href="../../dd/d14/class_simulation.html#af713a3529e71a04c0b832dd2e10591fb">Simulation::_quadruped</a></div><div class="ttdeci">Quadruped&lt; double &gt; _quadruped</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/ded/_simulation_8h_source.html#l00128">Simulation.h:128</a></div></div>
<div class="ttc" id="class_simulation_html_ad20996d43bb2265500b4edb5fcb00dc6"><div class="ttname"><a href="../../dd/d14/class_simulation.html#ad20996d43bb2265500b4edb5fcb00dc6">Simulation::buildLcmMessage</a></div><div class="ttdeci">void buildLcmMessage()</div><div class="ttdef"><b>Definition:</b> <a href="../../db/d98/_simulation_8cpp_source.html#l00472">Simulation.cpp:472</a></div></div>
<div class="ttc" id="class_simulation_html_a8a3a6fa9691b58d5dc614d98b8e4fefb"><div class="ttname"><a href="../../dd/d14/class_simulation.html#a8a3a6fa9691b58d5dc614d98b8e4fefb">Simulation::setRobotState</a></div><div class="ttdeci">void setRobotState(FBModelState&lt; double &gt; &amp;state)</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/ded/_simulation_8h_source.html#l00048">Simulation.h:48</a></div></div>
<div class="ttc" id="_spine_board_8h_html"><div class="ttname"><a href="../../d0/d6a/_spine_board_8h.html">SpineBoard.h</a></div><div class="ttdoc">Spine Board Code, used to simulate the SpineBoard. </div></div>
<div class="ttc" id="class_simulation_html_afef7938d79bfa913a86ff4b4448d9ae7"><div class="ttname"><a href="../../dd/d14/class_simulation.html#afef7938d79bfa913a86ff4b4448d9ae7">Simulation::_timeOfNextLowLevelControl</a></div><div class="ttdeci">double _timeOfNextLowLevelControl</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/ded/_simulation_8h_source.html#l00147">Simulation.h:147</a></div></div>
<div class="ttc" id="class_simulation_html_ae1f3a65499126d5d527500dd221300a4"><div class="ttname"><a href="../../dd/d14/class_simulation.html#ae1f3a65499126d5d527500dd221300a4">Simulation::_highLevelIterations</a></div><div class="ttdeci">s64 _highLevelIterations</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/ded/_simulation_8h_source.html#l00149">Simulation.h:149</a></div></div>
<div class="ttc" id="struct_f_b_model_state_html"><div class="ttname"><a href="../../de/d75/struct_f_b_model_state.html">FBModelState&lt; double &gt;</a></div></div>
<div class="ttc" id="_timer_8h_html"><div class="ttname"><a href="../../d5/d29/_timer_8h.html">Timer.h</a></div><div class="ttdoc">Timer for measuring how long things take. </div></div>
<div class="ttc" id="class_simulation_html_a846c1153eb5f89deea68886b1faea5b9"><div class="ttname"><a href="../../dd/d14/class_simulation.html#a846c1153eb5f89deea68886b1faea5b9">Simulation::_spiCommand</a></div><div class="ttdeci">SpiCommand _spiCommand</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/ded/_simulation_8h_source.html#l00136">Simulation.h:136</a></div></div>
<div class="ttc" id="class_simulation_html_abfe1f6283d725c294a80ec8cebaa854f"><div class="ttname"><a href="../../dd/d14/class_simulation.html#abfe1f6283d725c294a80ec8cebaa854f">Simulation::_spineBoards</a></div><div class="ttdeci">SpineBoard _spineBoards[4]</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/ded/_simulation_8h_source.html#l00138">Simulation.h:138</a></div></div>
<div class="ttc" id="class_simulation_html_a4053d346b6dd8e1b49e26625aa782eb3"><div class="ttname"><a href="../../dd/d14/class_simulation.html#a4053d346b6dd8e1b49e26625aa782eb3">Simulation::_robot</a></div><div class="ttdeci">RobotType _robot</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/ded/_simulation_8h_source.html#l00140">Simulation.h:140</a></div></div>
<div class="ttc" id="_simulator_parameters_8h_html"><div class="ttname"><a href="../../d2/dc1/_simulator_parameters_8h.html">SimulatorParameters.h</a></div></div>
<div class="ttc" id="class_simulation_html_a72521ff0a387ce6a53fec3bd9b209b5e"><div class="ttname"><a href="../../dd/d14/class_simulation.html#a72521ff0a387ce6a53fec3bd9b209b5e">Simulation::getRobotParams</a></div><div class="ttdeci">RobotControlParameters &amp; getRobotParams()</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/ded/_simulation_8h_source.html#l00108">Simulation.h:108</a></div></div>
<div class="ttc" id="_simulator_message_8h_html_a486e39cd4b287080b175f8736f67de4faa42b2fb0e720a080e79a92f4ca97d927"><div class="ttname"><a href="../../d1/db1/_simulator_message_8h.html#a486e39cd4b287080b175f8736f67de4faa42b2fb0e720a080e79a92f4ca97d927">SimulatorMode::EXIT</a></div></div>
<div class="ttc" id="class_simulation_html_af97dee243877316b7e78ba6d56a3cd2f"><div class="ttname"><a href="../../dd/d14/class_simulation.html#af97dee243877316b7e78ba6d56a3cd2f">Simulation::_userParams</a></div><div class="ttdeci">ControlParameters &amp; _userParams</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/ded/_simulation_8h_source.html#l00123">Simulation.h:123</a></div></div>
<div class="ttc" id="class_simulation_html_a42bbc154348f2b47e6071dd346678159"><div class="ttname"><a href="../../dd/d14/class_simulation.html#a42bbc154348f2b47e6071dd346678159">Simulation::_simLCM</a></div><div class="ttdeci">simulator_lcmt _simLCM</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/ded/_simulation_8h_source.html#l00150">Simulation.h:150</a></div></div>
<div class="ttc" id="class_simulation_html_a7057f1c2d1ad690fa55fcc66a5e69b7a"><div class="ttname"><a href="../../dd/d14/class_simulation.html#a7057f1c2d1ad690fa55fcc66a5e69b7a">Simulation::_simParams</a></div><div class="ttdeci">SimulatorControlParameters &amp; _simParams</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/ded/_simulation_8h_source.html#l00122">Simulation.h:122</a></div></div>
<div class="ttc" id="class_t_i___board_control_html"><div class="ttname"><a href="../../d4/d1a/class_t_i___board_control.html">TI_BoardControl</a></div><div class="ttdef"><b>Definition:</b> <a href="../../d9/d42/ti__boardcontrol_8h_source.html#l00033">ti_boardcontrol.h:33</a></div></div>
<div class="ttc" id="class_simulation_html_a6bf59d648bef2114a09ea3d81998ee3e"><div class="ttname"><a href="../../dd/d14/class_simulation.html#a6bf59d648bef2114a09ea3d81998ee3e">Simulation::Simulation</a></div><div class="ttdeci">EIGEN_MAKE_ALIGNED_OPERATOR_NEW Simulation(RobotType robot, Graphics3D *window, SimulatorControlParameters &amp;params, ControlParameters &amp;userParams)</div><div class="ttdef"><b>Definition:</b> <a href="../../db/d98/_simulation_8cpp_source.html#l00018">Simulation.cpp:18</a></div></div>
<div class="ttc" id="class_simulation_html_a0965cd3e2bce1b7ee1ce3f7f6d752444"><div class="ttname"><a href="../../dd/d14/class_simulation.html#a0965cd3e2bce1b7ee1ce3f7f6d752444">Simulation::_model</a></div><div class="ttdeci">FloatingBaseModel&lt; double &gt; _model</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/ded/_simulation_8h_source.html#l00130">Simulation.h:130</a></div></div>
<div class="ttc" id="class_dynamics_simulator_html_a72892f39ed60e2f50df53ea49ffb6433"><div class="ttname"><a href="../../d7/d9c/class_dynamics_simulator.html#a72892f39ed60e2f50df53ea49ffb6433">DynamicsSimulator::getState</a></div><div class="ttdeci">const FBModelState&lt; T &gt; &amp; getState() const </div><div class="ttdef"><b>Definition:</b> <a href="../../d0/d52/_dynamics_simulator_8h_source.html#l00074">DynamicsSimulator.h:74</a></div></div>
<div class="ttc" id="class_simulator_control_parameters_html"><div class="ttname"><a href="../../da/dcf/class_simulator_control_parameters.html">SimulatorControlParameters</a></div><div class="ttdef"><b>Definition:</b> <a href="../../d2/dc1/_simulator_parameters_8h_source.html#l00018">SimulatorParameters.h:18</a></div></div>
<div class="ttc" id="class_simulation_html_acd45041ed9262293f92d7928342ca4da"><div class="ttname"><a href="../../dd/d14/class_simulation.html#acd45041ed9262293f92d7928342ca4da">Simulation::_controllerRobotID</a></div><div class="ttdeci">size_t _controllerRobotID</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/ded/_simulation_8h_source.html#l00126">Simulation.h:126</a></div></div>
<div class="ttc" id="class_simulation_html_af5470397d0e1a3ee6f14aa981cf4e09b"><div class="ttname"><a href="../../dd/d14/class_simulation.html#af5470397d0e1a3ee6f14aa981cf4e09b">Simulation::resetSimTime</a></div><div class="ttdeci">void resetSimTime()</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/ded/_simulation_8h_source.html#l00081">Simulation.h:81</a></div></div>
<div class="ttc" id="class_simulation_html"><div class="ttname"><a href="../../dd/d14/class_simulation.html">Simulation</a></div><div class="ttdef"><b>Definition:</b> <a href="../../d2/ded/_simulation_8h_source.html#l00039">Simulation.h:39</a></div></div>
<div class="ttc" id="class_simulation_html_a496554e586e095dc468d56b61c5c6e16"><div class="ttname"><a href="../../dd/d14/class_simulation.html#a496554e586e095dc468d56b61c5c6e16">Simulation::_desiredSimSpeed</a></div><div class="ttdeci">double _desiredSimSpeed</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/ded/_simulation_8h_source.html#l00145">Simulation.h:145</a></div></div>
<div class="ttc" id="class_floating_base_model_html"><div class="ttname"><a href="../../d6/db1/class_floating_base_model.html">FloatingBaseModel&lt; double &gt;</a></div></div>
<div class="ttc" id="class_simulation_html_abeb2f6b890a6ecefabdba84c568899f4"><div class="ttname"><a href="../../dd/d14/class_simulation.html#abeb2f6b890a6ecefabdba84c568899f4">Simulation::_simulator</a></div><div class="ttdeci">DynamicsSimulator&lt; double &gt; * _simulator</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/ded/_simulation_8h_source.html#l00133">Simulation.h:133</a></div></div>
<div class="ttc" id="cpp_types_8h_html_ae2e5a0a178a2c528d8aa939f85db7a3e"><div class="ttname"><a href="../../d9/d8e/cpp_types_8h.html#ae2e5a0a178a2c528d8aa939f85db7a3e">DVec</a></div><div class="ttdeci">typename Eigen::Matrix&lt; T, Eigen::Dynamic, 1 &gt; DVec</div><div class="ttdef"><b>Definition:</b> <a href="../../d9/d8e/cpp_types_8h_source.html#l00102">cppTypes.h:102</a></div></div>
<div class="ttc" id="class_simulation_html_ae8523a0daf2a3f08822688ee40e63fa9"><div class="ttname"><a href="../../dd/d14/class_simulation.html#ae8523a0daf2a3f08822688ee40e63fa9">Simulation::_wantStop</a></div><div class="ttdeci">bool _wantStop</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/ded/_simulation_8h_source.html#l00144">Simulation.h:144</a></div></div>
<div class="ttc" id="namespaceori_html"><div class="ttname"><a href="../../da/d9b/namespaceori.html">ori</a></div><div class="ttdef"><b>Definition:</b> <a href="../../d4/dfb/orientation__tools_8h_source.html#l00028">orientation_tools.h:28</a></div></div>
<div class="ttc" id="_control_parameter_interface_8h_html"><div class="ttname"><a href="../../d6/de9/_control_parameter_interface_8h.html">ControlParameterInterface.h</a></div><div class="ttdoc">Types to allow remote access of control parameters, for use with LCM/Shared memory. </div></div>
<div class="ttc" id="_simulator_message_8h_html"><div class="ttname"><a href="../../d1/db1/_simulator_message_8h.html">SimulatorMessage.h</a></div><div class="ttdoc">Messages sent to/from the development simulator. </div></div>
<div class="ttc" id="cpp_types_8h_html_a78d284d08fd22d809fd436256f2cbc39"><div class="ttname"><a href="../../d9/d8e/cpp_types_8h.html#a78d284d08fd22d809fd436256f2cbc39">RobotType</a></div><div class="ttdeci">RobotType</div><div class="ttdef"><b>Definition:</b> <a href="../../d9/d8e/cpp_types_8h_source.html#l00120">cppTypes.h:120</a></div></div>
<div class="ttc" id="class_simulation_html_a44340d99dee87ef14aaf02faa94ea3d4"><div class="ttname"><a href="../../dd/d14/class_simulation.html#a44340d99dee87ef14aaf02faa94ea3d4">Simulation::_currentSimTime</a></div><div class="ttdeci">double _currentSimTime</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/ded/_simulation_8h_source.html#l00146">Simulation.h:146</a></div></div>
<div class="ttc" id="ti__boardcontrol_8h_html"><div class="ttname"><a href="../../d9/d42/ti__boardcontrol_8h.html">ti_boardcontrol.h</a></div></div>
<div class="ttc" id="class_simulation_html_a08195e8efa3d8d3c655bfb859b8bcdda"><div class="ttname"><a href="../../dd/d14/class_simulation.html#a08195e8efa3d8d3c655bfb859b8bcdda">Simulation::_imuSimulator</a></div><div class="ttdeci">ImuSimulator&lt; double &gt; * _imuSimulator</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/ded/_simulation_8h_source.html#l00121">Simulation.h:121</a></div></div>
<div class="ttc" id="class_simulation_html_adf2d9c22a32a995bf2a8505947ca6871"><div class="ttname"><a href="../../dd/d14/class_simulation.html#adf2d9c22a32a995bf2a8505947ca6871">Simulation::_robotControllerState</a></div><div class="ttdeci">FBModelState&lt; double &gt; _robotControllerState</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/ded/_simulation_8h_source.html#l00129">Simulation.h:129</a></div></div>
<div class="ttc" id="class_imu_simulator_html"><div class="ttname"><a href="../../d8/da4/class_imu_simulator.html">ImuSimulator&lt; double &gt;</a></div></div>
<div class="ttc" id="class_simulation_html_a343e571a3ad423fead44db01758fe54c"><div class="ttname"><a href="../../dd/d14/class_simulation.html#a343e571a3ad423fead44db01758fe54c">Simulation::getSimParams</a></div><div class="ttdeci">SimulatorControlParameters &amp; getSimParams()</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/ded/_simulation_8h_source.html#l00106">Simulation.h:106</a></div></div>
<div class="ttc" id="class_simulation_html_adee3976d5353a82874f9e793269044b7"><div class="ttname"><a href="../../dd/d14/class_simulation.html#adee3976d5353a82874f9e793269044b7">Simulation::_timeOfNextHighLevelControl</a></div><div class="ttdeci">double _timeOfNextHighLevelControl</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/ded/_simulation_8h_source.html#l00148">Simulation.h:148</a></div></div>
<div class="ttc" id="class_simulation_html_a31364f2daa9daedef347aaff4001796c"><div class="ttname"><a href="../../dd/d14/class_simulation.html#a31364f2daa9daedef347aaff4001796c">Simulation::sendControlParameter</a></div><div class="ttdeci">void sendControlParameter(const std::string &amp;name, ControlParameterValue value, ControlParameterValueKind kind, bool isUser)</div><div class="ttdef"><b>Definition:</b> <a href="../../db/d98/_simulation_8cpp_source.html#l00216">Simulation.cpp:216</a></div></div>
<div class="ttc" id="struct_spi_data_html"><div class="ttname"><a href="../../d5/d09/struct_spi_data.html">SpiData</a></div><div class="ttdef"><b>Definition:</b> <a href="../../d0/d6a/_spine_board_8h_source.html#l00034">SpineBoard.h:34</a></div></div>
<div class="ttc" id="_graphics3_d_8h_html"><div class="ttname"><a href="../../d2/de7/_graphics3_d_8h.html">Graphics3D.h</a></div><div class="ttdoc">Visualizer window for simulator. </div></div>
<div class="ttc" id="class_simulation_html_a33a669431e116d1e6c59af5a4a4ad9bf"><div class="ttname"><a href="../../dd/d14/class_simulation.html#a33a669431e116d1e6c59af5a4a4ad9bf">Simulation::_robotDataModel</a></div><div class="ttdeci">FloatingBaseModel&lt; double &gt; _robotDataModel</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/ded/_simulation_8h_source.html#l00131">Simulation.h:131</a></div></div>
<div class="ttc" id="class_shared_memory_object_html"><div class="ttname"><a href="../../d1/d8d/class_shared_memory_object.html">SharedMemoryObject&lt; SimulatorSyncronizedMessage &gt;</a></div></div>
<div class="ttc" id="class_simulation_html_a84d72d5cddf1b6b5dbbe94f83a448958"><div class="ttname"><a href="../../dd/d14/class_simulation.html#a84d72d5cddf1b6b5dbbe94f83a448958">Simulation::isRobotConnected</a></div><div class="ttdeci">bool isRobotConnected()</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/ded/_simulation_8h_source.html#l00111">Simulation.h:111</a></div></div>
<div class="ttc" id="class_simulation_html_a631f7ffcbbba9b636bf851093c825739"><div class="ttname"><a href="../../dd/d14/class_simulation.html#a631f7ffcbbba9b636bf851093c825739">Simulation::_lcm</a></div><div class="ttdeci">lcm::LCM * _lcm</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/ded/_simulation_8h_source.html#l00141">Simulation.h:141</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="../../dir_43e0a1f539e00dcfa1a6bc4d4fee4fc2.html">home</a></li><li class="navelem"><a class="el" href="../../dir_61bfb0b3cdda81b1b0355ba34eb3b1eb.html">dhkim</a></li><li class="navelem"><a class="el" href="../../dir_adee5b101e079090017bb4e91c628ead.html">Public_Repository</a></li><li class="navelem"><a class="el" href="../../dir_7fc07a7b97001e7b1d18e11da761e2de.html">Cheetah-Software</a></li><li class="navelem"><a class="el" href="../../dir_e380f5e928ac62e3c78e1e401f2404bd.html">sim</a></li><li class="navelem"><a class="el" href="../../dir_ad06ce47554390031628fa046f7fdb3f.html">include</a></li><li class="navelem"><a class="el" href="../../d2/ded/_simulation_8h.html">Simulation.h</a></li>
    <li class="footer">Generated by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="../../doxygen.png" alt="doxygen"/></a> 1.8.11 </li>
  </ul>
</div>
</body>
</html>
